#

| Chapter 3 The UNIX Shell: An Overview |

## 3.4 Common Features

The table below is a sampling of features that are common to the Bourne, Korn, and C shells. Note that the Korn shell is an enhanced version of the Bourne shell; therefore, the Korn shell includes all features of the Bourne shell, plus some others. The commands bg, fg, jobs, stop, and suspend are available only on systems that support job control.

Symbol/ | Meaning/Action
--- | ---
Command |
> | Redirect output.
>> | Append to file.
< | Redirect input.
<< | "Here" document (redirect input).
| | Pipe output.
& | Run process in background.
; | Separate commands on same line.
* | Match any character(s) in filename.
? | Match single character in filename.
[ ] | Match any characters enclosed.
( ) | Execute in subshell.
` ` | Substitute output of enclosed command.
" " | Partial quote (allows variable and command expansion).
' ' | Full quote (no expansion).
\ | Quote following character.
$`var` | Use value for variable.
$$ | Process id.
$0 | Command name.
$`n` | `n`th argument (0<`n`<9).
$* | All arguments as a simple word.
# | Begin comment.
bg | Background execution.
break | Break from loop statements.
cd | Change directories
continue | Resume a program loop.
echo | Display output.
eval | Evaluate arguments.
exec | Execute a new shell.
fg | Foreground execution.
jobs | Show active jobs.
kill | Terminate running jobs.
newgrp | Change to a new group.
shift | Shift positional parameters.
stop | Suspend a background job.
suspend | Suspend a foreground job.
time | Time a command.
umask | Set or list file permissions.
unset | Erase variable or function definitions.
wait | Wait for a background job to finish.

3.3 Shell Flavors |  | 3.5 Differing Features